package com.linkgie.galaxyframework.domain.data;

import com.linkgie.galaxyframework.metadata.ContentType;

/**
 * 领域类的字段；
 * 
 * @author huanghaiquan
 *
 */
public interface ClassField extends ClassFieldDefinition {
	

	ContentType getContentType();
	
	/**
	 * 引用类型；<p>
	 * 
	 * 如果不是引用类型，则返回 null；
	 * 
	 * @return
	 */
	ClassReference getClassReference();
	
	/**
	 * 组合类型；<p>
	 * 
	 * 如果不是引用类型，则返回 null；
	 * 
	 * @return
	 */
	ClassComposite getClassComposite();
	
	/**
	 * 枚举类型；
	 * 
	 * @return
	 */
	DomainEnum getEnumReference();
	
	boolean isLabel();
}
